home *** CD-ROM | disk | FTP | other *** search
/ Compendium Deluxe 1 / LSD Compendium Deluxe 1.iso / a / programming / assembly / kbmenu.lha / killerbytemenu / KillerByteMenu.S < prev    next >
Encoding:
Text File  |  1980-01-30  |  11.8 KB  |  604 lines

  1. aud0lch    equ    $dff0a0
  2. aud0len    equ    $dff0a4
  3. aud0per    equ    $dff0a6
  4. aud0vol    equ    $dff0a8
  5.  
  6. aud1lch    equ    $dff0b0
  7. aud1len    equ    $dff0b4
  8. aud1per    equ    $dff0b6
  9. aud1vol    equ    $dff0b8
  10.  
  11. aud2lch    equ    $dff0c0
  12. aud2len    equ    $dff0c4
  13. aud2per    equ    $dff0c6
  14. aud2vol    equ    $dff0c8
  15.  
  16. aud3lch    equ    $dff0d0
  17. aud3len    equ    $dff0d4
  18. aud3per    equ    $dff0d6
  19. aud3vol    equ    $dff0d8
  20. dmacon    equ    $dff096
  21. intreqr    equ    $dff01e
  22. intreq    equ    $dff09c
  23. dmaconr equ    $dff002
  24. bltcon0 equ    $dff040
  25. bltcon1 equ    $dff042
  26. bltamod equ    $dff064            ;hardware reg's
  27. bltbmod equ    $dff062
  28. bltcmod    equ    $dff060
  29. bltdmod    equ    $dff066
  30. bltafwm equ    $dff044
  31. bltapth equ    $dff050
  32. bltbpth equ    $dff04c
  33. bltcpth equ    $dff048
  34. bltdpth equ    $dff054
  35. bltsize equ     $dff058
  36.  
  37. execbase    equ    4
  38. OpenLibrary     equ    -552
  39. CloseLibrary    equ    -414
  40. lvo.output    equ    -60
  41. lvo.execute    equ    -222
  42. screenwidth    equ    48
  43. screenheight    equ    276
  44. MenuStart    equ    3    ;NoLineDown-1
  45. NoOpts        equ    10    ;NoMenuOptions, Max=10
  46.                 ;Demos must be called.. Demo0,Demo1,Demo2,etc
  47.     incdir    "DF0:KillerByteMenu"
  48.  
  49.     lea    _dosname,a1
  50.     moveq.l    #0,d0
  51.     move.l    execbase.w,a6
  52.     jsr    OpenLibrary(a6)
  53.     move.l    d0,_dosstore
  54.     jsr    mt_init
  55. RTURN    move.l    #start,$80.w
  56.     trap    #0
  57.     bra    RTURN
  58.     rts
  59. start:
  60.     cmp.b    #$10,$dff006
  61.     bne    start
  62.     movem.l d0-d7/a0-a6,-(a7)        ;save reg's 
  63.     bsr    setupcopper
  64.     bsr    PlaceRVG
  65.     bsr    PrintText
  66.     jsr    start_up
  67.     jsr    waittof
  68.     bsr    mainloop
  69. ;    jsr    mt_end
  70.     jsr    return_system
  71.     move.w    #0,aud0vol
  72.     move.w    #0,aud1vol
  73.     move.w    #0,aud2vol
  74.     move.w    #0,aud3vol
  75.     bsr    LoadFile
  76. ;    move.l    _dosstore,a1
  77. ;    move.l    execbase.w,a6
  78. ;    jsr    CloseLibrary(a6)    *** Goodbye Library
  79.     movem.l (a7)+,d0-d7/a0-a6
  80.     rte
  81. mainloop                ;THE MAINLOOP
  82.     bsr    Mouse
  83.     bsr    MoveRVG
  84.     bsr    Scroll
  85.     jsr    mt_music
  86.     jsr    waittof
  87.     btst    #$06,$bfe001               ;test for left mousebutton
  88.     bne     mainloop
  89.     rts
  90. **************************** Lets Scroll Captain ****************************
  91. Scroll:
  92.     subq.w    #1,SCnt
  93.     bne    .nonewchar
  94.     move.w    #8,SCnt
  95.     move.l    STPnt,a0
  96.     lea    Font,a2
  97.     moveq.l    #0,d0
  98.     move.b    (a0)+,d0
  99.     tst.b    d0
  100.     bne    .noreset
  101.     move.l    #ScrollText,a0
  102.     bra    .jump
  103. .noreset
  104.     cmp.b    #" ",d0
  105.     bne    .nospace
  106.     move.l    #MenuGFX+(251*46*3)+96+43,a1
  107.     move.b    #0,(a1)
  108.     move.b    #0,46*3(a1)
  109.     move.b    #0,46*3*2(a1)
  110.     move.b    #0,46*3*3(a1)
  111.     move.b    #0,46*3*4(a1)
  112.     move.b    #0,46*3*5(a1)
  113.     move.b    #0,46*3*6(a1)
  114.     move.b    #0,46*3*7(a1)
  115.     bra    .jump
  116. .nospace
  117.     sub.b    #$28,d0
  118.     lea    (a2,d0.w),a2
  119.     move.l    #MenuGFX+(251*46*3)+96+43,a1
  120.     move.b    (a2),(a1)
  121.     move.b    52*3(a2),46*3(a1)
  122.     move.b    52*3*2(a2),46*3*2(a1)
  123.     move.b    52*3*3(a2),46*3*3(a1)
  124.     move.b    52*3*4(a2),46*3*4(a1)
  125.     move.b    52*3*5(a2),46*3*5(a1)
  126.     move.b    52*3*6(a2),46*3*6(a1)
  127.     move.b    52*3*7(a2),46*3*7(a1)
  128. .jump    move.l    a0,STPnt
  129. .nonewchar
  130.     bsr    WaitBlt
  131.     move.l    #MenuGFX+(251*46*3)+96-2,bltdpth
  132.     move.l    #MenuGFX+(251*46*3)+96,bltapth
  133.     move.w    #46*3-46,bltdmod
  134.     move.w    #46*3-46,bltamod
  135.     move.w    #$f9f0,bltcon0
  136.     move.w    #$0000,bltcon1
  137.     move.w    #8<<6+(46/2),bltsize
  138.     rts
  139. SCnt:    dc.w    8
  140. STPnt:    dc.l    ScrollText
  141. ScrollText:    ;0=Reset Scroll
  142.     dc.b    "HI JON, THIS IS KILLER BYTES MENU... I THINK IT LOOKS WELL "
  143.     dc.b    "SMART... IF YOU NEED ANYTHING CHANGING I WILL DO SO... "
  144.     dc.b    "ANYWAY GOT TO GO... BYE FOR NOW.... STU... ",0
  145.     even
  146. ******************* Time To Load That God Damm Mother File ******************
  147. LoadFile:
  148.     move.w    YPos,d0
  149.     lsr.w    #3,d0
  150.     add.b    #$30,d0
  151.     move.b    d0,File+8
  152.  
  153.     move.l    _dosstore,a6
  154.     jsr    lvo.output(a6)
  155.     move.l    d0,d3
  156.     move.l    #File,d1
  157.     moveq.l    #0,d2
  158.     move.l    _dosstore,a6
  159.     jsr    lvo.execute(a6)
  160.     rts
  161. File:    dc.b    'DF0:DEMOX',0
  162. ****************************** Mouse Tracking *******************************
  163. Mouse:
  164.     bsr    UnBlt
  165.     move.w    $dff00a,d0
  166.     lsr.w    #8,d0
  167.     move.b    oldy,d1
  168.     move.b    d0,oldy
  169.     sub.b    d0,d1
  170.     ext.w    d1
  171.     sub.w    d1,YPos
  172.     tst.w    YPos
  173.     bge    .oktop
  174.     move.w    #0,YPos
  175. .oktop
  176.     cmp.w    #(NoOpts-1)*8,YPos
  177.     ble    .okbot
  178.     move.w    #(NoOpts-1)*8,YPos
  179. .okbot
  180.     move.w    YPos,d0
  181.     lsr.w    #3,d0
  182.     move.w    d0,RealY
  183.     mulu.w    #10,d0
  184.     move.w    d0,d1
  185.     move.b    d1,Sprite1
  186.     move.b    d1,Sprite2
  187.     move.b    d2,Sprite1+2
  188.     move.b    d2,Sprite2+2
  189.     add.w    #$50+(MenuStart*10),d0
  190.     lea    BarC,a0
  191.     move.w    #11-1,d7
  192. .loop
  193.     move.b    d0,(a0)
  194.     lea    12(a0),a0
  195.     move.b    d0,(a0)
  196.     addq.b    #1,d0
  197.     lea    12(a0),a0
  198.     dbra    d7,.loop
  199.  
  200.     move.w    #$50+(MenuStart*10),d0
  201.     add.w    d1,d0
  202.     move.w    d0,d1
  203.     add.w    #11,d1
  204.     move.b    d0,Sprite1
  205.     move.b    d0,Sprite2
  206.     move.b    d1,Sprite1+2
  207.     move.b    d1,Sprite2+2
  208.     bsr    BltOn
  209.     rts
  210. BltOn:
  211.     move.l    #MenuGFX+22+6670+(MenuStart*10*46*3),a0
  212.     move.w    RealY,d0
  213.     mulu    #46*3*10,d0
  214.     lea    (a0,d0.w),a0
  215.     move.l    a0,bltdpth
  216.     move.w    #46*3-20,bltdmod
  217.     move.w    #$01ff,bltcon0
  218.     move.w    #$0000,bltcon1
  219.     move.w    #11<<6+(20/2),bltsize
  220.     rts
  221. UnBlt:
  222.     move.l    #MenuGFX+22+6670+(MenuStart*10*46*3),a0
  223.     move.w    RealY,d0
  224.     mulu    #46*3*10,d0
  225.     lea    (a0,d0.w),a0
  226.     move.l    a0,bltdpth
  227.     move.w    #46*3-20,bltdmod
  228.     move.w    #$0100,bltcon0
  229.     move.w    #$0000,bltcon1
  230.     move.w    #11<<6+(20/2),bltsize
  231.     rts
  232. YPos:    dc.w    0
  233. RealY:    dc.w    0
  234. oldy:    dc.w    0
  235. *************************** Do All The Text Shit ****************************
  236. PrintText:
  237.     lea    MenuGFX+22+(46*(50*3)),a0
  238.     lea    Text,a1
  239.     move.l    #46*(10*3),d7        ;CharCnt
  240. .PrintLoop
  241.     moveq.l    #0,d0
  242.     lea    Font,a2
  243.     move.b    (a1)+,d0
  244.     cmp.b    #1,d0
  245.     bne    .NoLine
  246.     lea    (a0,d7.w),a0
  247.     move.l    #46*(10*3),d7
  248.     bra    .PrintLoop
  249. .NoLine    cmp.b    #$20,d0
  250.     beq    .goagai
  251.     tst.b    d0
  252.     beq    .ret
  253.     sub.b    #$28,d0
  254.     lea    (a2,d0.w),a2
  255.     move.l    a0,a3
  256.     move.w    #(8*3)-1,d0
  257. .plane1    move.b    (a2),(a3)
  258.     lea    52(a2),a2
  259.     lea    screenwidth-2(a3),a3
  260.     dbra    d0,.plane1
  261. .goagai    addq.l    #1,a0
  262.     subq.l    #1,d7
  263.     bra    .PrintLoop
  264. .ret    rts
  265. Text:    ;1=Next Line Please, 0=Finish Text...
  266.     dc.b    'KILLER BYTE PRESENTS',1
  267.     dc.b    ' BITS AN BYTES NO.1 ',1,1
  268.     dc.b    '       DEMO 0',1
  269.     dc.b    '       DEMO 1',1
  270.     dc.b    '       DEMO 2',1
  271.     dc.b    '       DEMO 3',1
  272.     dc.b    '       DEMO 4',1
  273.     dc.b    '       DEMO 5',1
  274.     dc.b    '       DEMO 6',1
  275.     dc.b    '       DEMO 7',1
  276.     dc.b    '       DEMO 8',1
  277.     dc.b    '       DEMO 9',0
  278.     even
  279. ************************* Move That Funky Thing!!!? *************************
  280. XAdds    equ    400
  281. YAdds    equ    400
  282. MoveRVG:
  283.     move.w    Ycnt,d0
  284.     add.w    #YAdds,Ycnt
  285.     move.w    #400,d7
  286.     bsr    GetSINe
  287.     and.l    #$ffff,d0
  288.     mulu.w    #screenwidth*2,d0
  289.     move.l    #screen1,d7
  290.     add.l    d0,d7
  291.     move.w    d7,Plane0h+6
  292.     swap    d7
  293.     move.w    d7,Plane0h+2
  294.     swap    d7
  295.     add.l    #screenwidth,d7
  296.     move.w    d7,Plane1h+6
  297.     swap    d7
  298.     move.w    d7,Plane1h+2
  299.     swap    d7
  300.     move.w    Xcnt,d0
  301.     add.w    #XAdds,Xcnt
  302.     move.w    #200,d7
  303.     bsr    GetSINe
  304.     move.w    d0,d1
  305.     add.w    d1,d1
  306.     and.w    #$0020,d1
  307.     beq    .skip
  308.     add.w    #2,Plane0h+6
  309.     add.w    #2,Plane1h+6
  310. .skip
  311.     and.w    #$000f,d0
  312.     rol.w    #4,d0
  313.     move.b    d0,ScrZ+3
  314.     rts
  315. Xcnt    dc.w    0
  316. Ycnt    dc.w    $ffff/4
  317. GetSINe:
  318.     and.l    #$ffff,d0
  319.     move.w    d0,d3
  320.     and.w    #$7fff,d0
  321.     move.w    #$7fff,d1
  322.     sub.w    d0,d1
  323.     mulu    d1,d0
  324.     lsr.l    #8,d0
  325.     lsr.l    #5,d0
  326.     btst    #15,d3
  327.     beq    .high
  328.     neg.w    d0
  329. .high    add.w    #$8000,d0
  330.     divu.w    d7,d0
  331.     rts
  332. ******************* system on off stuff & Other Stuff ***********************
  333. PlaceRVG:
  334.     move.l    #-1,bltafwm
  335.     move.l    #screen1,d7
  336.     move.w    #screenwidth-4,bltdmod
  337.     move.w    #0,bltamod
  338.     move.w    #$09f0,bltcon0
  339.     move.w    #$0000,bltcon1
  340.     move.w    #28-1,d1
  341.     move.l    #2,d6
  342. .LLoop    move.w    #(screenwidth/4)-1,d0
  343. .Loop
  344.     bsr    WaitBlt
  345.     move.l    d7,bltdpth
  346.     move.l    #RVGSpr,bltapth
  347.     move.w    #20<<6+(32/16),bltsize
  348.     add.l    #4,d7
  349.     dbra    d0,.Loop
  350.     add.l    #(screenwidth*31),d7
  351.     add.l    d6,d7
  352.     neg.l    d6
  353.     dbra    d1,.LLoop
  354.     rts
  355. setupcopper:
  356.     move.l    #screen1,d0
  357.     move.w    d0,Plane0h+6
  358.     swap    d0
  359.     move.w    d0,Plane0h+2
  360.     swap    d0
  361.     add.l    #screenwidth,d0
  362.     move.w    d0,Plane1h+6
  363.     swap    d0
  364.     move.w    d0,Plane1h+2
  365.     swap    d0
  366.  
  367.     move.l    #MenuGFX+2,d0
  368.     move.w    d0,MenuPl+2
  369.     swap    d0
  370.     move.w    d0,MenuPl-2
  371.     swap    d0
  372.     add.l    #46,d0
  373.     move.w    d0,MenuPl+10
  374.     swap    d0
  375.     move.w    d0,MenuPl+6
  376.     swap    d0
  377.     add.l    #46,d0
  378.     move.w    d0,MenuPl+18
  379.     swap    d0
  380.     move.w    d0,MenuPl+14
  381.  
  382.     move.l    #Sprite1,d0
  383.     move.w    d0,spr0l+2
  384.     swap    d0
  385.     move.w    d0,spr0h+2
  386.     move.l    #Sprite2,d0
  387.     move.w    d0,spr1l+2
  388.     swap    d0
  389.     move.w    d0,spr1h+2
  390.     rts
  391. WaitBlt:
  392.     btst    #14,dmaconr
  393. .wait
  394.     btst    #14,dmaconr
  395.     bne    .wait
  396.     rts
  397. waittof:
  398.     tst.b    fly
  399.     beq    waittof
  400.     move.b    #0,fly
  401.     rts
  402. start_up
  403.  
  404.     move.l    usp,a0
  405.     move.l    a0,uspstore        *** Save USP
  406.     lea    library,a1
  407.     moveq    #0,d0
  408.     move.l    execbase,a6
  409.     jsr    OpenLibrary(a6)        *** Open Graphics Library
  410.     tst    d0
  411.     beq    error
  412.     move.l    d0,libstore        *** Store graphics base
  413.  
  414.     move.l    libstore,a6        *** Set up Copper List
  415.     add.l    #$32,a6
  416.     move.l    (a6),copperstore    *** Store Workbench Copper List
  417.     move.l    #copperstart,(a6)    *** Use Our Copper List
  418.     move.w    #$85ff,$dff096        *** Well `Ard Blitter
  419.     move.w    #$8010,$dff09a        *** Enable level 3 interrupt
  420.     move.l    $6c.w,old        *** Store old level 3 interrupt
  421.     move.l    $70.w,old+4        *** Store old level 3 interrupt
  422.     move.l    $74.w,old+8        *** Store old level 3 interrupt
  423.     move.l    $78.w,old+12        *** Store old level 3 interrupt
  424.     move.l    $7c.w,old+16        *** Store old level 3 interrupt
  425.     move.l    #dummy,$70.w
  426.     move.l    #dummy,$74.w
  427.     move.l    #dummy,$78.w
  428.     move.l    #dummy,$7c.w
  429.     move.l    #new,$6c.w        *** Use New Interrupt
  430.     bset    #1,$bfe001        *** Filter Off
  431.     move.w    #0,$dff042        *** Clear Out CLI crap
  432.     clr.w    $dff144            *** No Sprite stripes
  433.     rts
  434.  
  435. return_system
  436.     bclr    #1,$bfe001
  437.     move.l    old,$6c.w        *** Put in old level 3 Interrupt
  438.     move.l    old+4,$70.w        *** Store old Level 3 interrupt
  439.     move.l    old+8,$74.w        *** Store old Level 3 interrupt
  440.     move.l    old+12,$78.w        *** Store old Level 3 interrupt
  441.     move.l    old+16,$7c.w        *** Store old Level 3 interrupt
  442.     move.w    #$10,$dff09a        *** Disable our L3 int.
  443.     move.w    #$8030,$dff096        *** Sprites & Disk DMA back on
  444.     move.l    libstore,a6
  445.     add.l    #$32,a6
  446.     move.l    copperstore,(a6)    *** Put back Workbench Copper
  447.     move.l    libstore,a1        *** Close Graphics Library
  448.     move.l    execbase,a6
  449.     jsr    CloseLibrary(a6)    *** Goodbye Library
  450. error:    moveq    #0,d0            *** No Workbench Errors
  451.     move.l    uspstore,a0        *** Old USP
  452.     move.l    a0,usp
  453.     rts
  454. fly:
  455.     dc.w    0
  456. uspstore:
  457.     dc.l    0
  458. _dosstore:
  459.     dc.l    0
  460. copperstore:
  461.     dc.l    0
  462. libstore:
  463.     dc.l    0
  464. library:
  465.     dc.b    'graphics.library',0
  466.     even
  467. _dosname:
  468.     dc.b    'dos.library',0
  469.     even
  470. ****************** My Cool Interrupts *********************
  471. new:    movem.l    d0-d7/a0-a6,-(a7)
  472.     and.w    #$10,intreqr
  473.     beq    out
  474.     move.w    #$10,intreq
  475.     addq.b    #1,fly
  476. out:    movem.l    (a7)+,d0-d7/a0-a6
  477.  
  478.     dc.w    $4ef9            *** JSR Instruction
  479. old:    dc.l    0            *** to here
  480.     dc.l    0,0,0,0,0,0
  481.  
  482. dummy:    rte
  483.  
  484.     SECTION    "SCREENS",BSS_C
  485. screen1:
  486.     ds.b    screenwidth*(screenheight+172)*2
  487.  
  488.     SECTION    "DATASTUFF",DATA_C
  489.  
  490. copperstart:
  491.     dc.w    $0180,$0212
  492.     dc.w    $0182,$0dde
  493.     dc.w    $0184,$0bbc
  494.     dc.w    $0186,$0889
  495.     dc.w    $0188,$0667
  496.     dc.w    $018a,$0445
  497.     dc.w    $018c,$0334
  498.     dc.w    $018e,$0223
  499.     dc.w    $0192,$0434
  500.     dc.w    $0194,$0656
  501.     dc.w    $0196,$0878
  502.     dc.w    $01a2,$099a
  503.     dc.w    $01a4,$0778
  504.     dc.w    $01a6,$0556
  505.  
  506. ScrZ    dc.w    $0102,$0000
  507.     dc.w    $0100,$5600         ;number of bitplanes
  508.     dc.w    $008e,$2071           ;start display window at (81,2c)
  509.     dc.w    $0090,$34d1           ;stop display at (c1,f4)
  510.     dc.w    $0092,$0028           ;data fetch start
  511.     dc.w    $0094,$00d8           ;data fetch stop
  512.     dc.w    $0108,46*2
  513.     dc.w    $010a,screenwidth+2
  514. spr0h    dc.w    $0120,$0000
  515. spr0l    dc.w    $0122,$0001
  516. spr1h    dc.w    $0124,$0000
  517. spr1l    dc.w    $0126,$0001
  518. Plane0h    dc.w     $00e4,$0000
  519.     dc.w    $00e6,$0000
  520. Plane1h    dc.w     $00ec,$0000
  521.     dc.w    $00ee,$0000
  522.  
  523.     dc.w     $00e0,$0000
  524. MenuPl    dc.w    $00e2,$0000
  525.     dc.w     $00e8,$0000
  526.     dc.w    $00ea,$0000
  527.     dc.w     $00f0,$0000
  528.     dc.w    $00f2,$0000
  529.     dc.w    $9c,$8010    ;Call Copper Interrupt
  530.  
  531. C:    set    $50+(MenuStart*10)
  532.  
  533. BarC    dc.b    C,$7b,$ff,$fe
  534.     dc.w    $0184,$099a
  535.     dc.w    $018c,$0556
  536.     dc.b    C,$d7,$ff,$fe
  537.     dc.w    $0184,$0bbc
  538.     dc.w    $018c,$0334
  539. C:    set    C+1
  540.     rept    11-2
  541.     dc.b    C,$7b,$ff,$fe
  542.     dc.w    $0184,$0445
  543.     dc.w    $018c,$0556
  544.     dc.b    C,$d7,$ff,$fe
  545.     dc.w    $0184,$0bbc
  546.     dc.w    $018c,$0334
  547. C:    set    C+1
  548.     endr
  549.     dc.b    C,$7b,$ff,$fe
  550.     dc.w    $0184,$0778
  551.     dc.w    $018c,$0556
  552.     dc.b    C,$d7,$ff,$fe
  553.     dc.w    $0184,$0bbc
  554.     dc.w    $018c,$0334
  555.  
  556.     dc.w    $ffdd,$fffe
  557.     dc.w    $1b01,$fffe
  558.     dc.w    $0188,$0fff
  559.     dc.w    $018a,$0dde
  560.     dc.w    $018c,$0bbc
  561.     dc.w    $018e,$0889
  562.  
  563.     dc.w    $2301,$fffe
  564.     dc.w    $0188,$0667
  565.     dc.w    $018a,$0445
  566.     dc.w    $018c,$0334
  567.     dc.w    $018e,$0223
  568.  
  569.     dc.w    $ffff,$fffe    ;end copper
  570. RVGSpr:        incbin    RvgSpr.Raw
  571. MenuGFX:    incbin    MenuGFX.Raw
  572. Font:        incbin    Font.Raw
  573. Bar:        incbin    Bar.Raw
  574. Sprite1:
  575.     dc.w    $50<<8+(MenuStart*10)<<8+$78,$5b<<8+(MenuStart*10)<<8+$00
  576.     dc.w    $0003,$0000
  577.     dc.w    $0002,$0001
  578.     dc.w    $0002,$0001
  579.     dc.w    $0002,$0001
  580.     dc.w    $0002,$0001
  581.     dc.w    $0002,$0001
  582.     dc.w    $0002,$0001
  583.     dc.w    $0002,$0001
  584.     dc.w    $0002,$0001
  585.     dc.w    $0002,$0001
  586.     dc.w    $0002,$0001
  587. Sprite2:
  588.     dc.w    $50<<8+(MenuStart*10)<<8+$d0,$5b<<8+(MenuStart*10)<<8+$00
  589.     dc.w    $8000,$4000
  590.     dc.w    $8000,$4000
  591.     dc.w    $8000,$4000
  592.     dc.w    $8000,$4000
  593.     dc.w    $8000,$4000
  594.     dc.w    $8000,$4000
  595.     dc.w    $8000,$4000
  596.     dc.w    $8000,$4000
  597.     dc.w    $8000,$4000
  598.     dc.w    $8000,$4000
  599.     dc.w    $0000,$c000
  600.  
  601.     incdir    "DF0:Music"
  602. mt_data:    incbin    Mod.Chip
  603. MusicBase:    include    NoisePlayer.s
  604.